/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package optimizacion;

import optimizacion.distribuciones.Normal;

/**
 *
 * @author ricardo
 */
public class cafeteria {



    public double gananciasDia(int panes, double varTajada) {
        double v = varTajada;
        int p = panes;
        int stock;
        double  mediaDemanda = 80 - 0.4 * v;
        double varDemanda = (0.1 * v) * (0.1 * v);
        Normal geneDemanda = new Normal(varDemanda, mediaDemanda);
        double ganancias = 0;
        for (int i = 0; i < 250; i++) {
            int demanda = (int) geneDemanda.generar();
            stock = p;
            if (demanda >= stock) {
                ganancias = ganancias + stock * v * 20;
                stock = 0;
            } else {
                ganancias = ganancias + demanda * v * 20;
                stock = stock - demanda;

            }
            ganancias =ganancias+ stock * 100;
            ganancias =ganancias- costoPedido(p);

        }
        return ganancias / 250;
    }

    private double costoPedido(int panes) {
        if (panes > 50) {
            return 20000 + 50 * 1000 + (panes - 50) * 900;
        } else {
            return 20000 + 1000 * panes;
        }

    }
}
